﻿--oracle数据库专用增加id自增的sql语句
--为表users增加自增字段
--创建自增序列
CREATE SEQUENCE users_id_sequence
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加，不循环
NOCACHE; -- 不建缓冲区
--创建插入触发器，更新id字段
CREATE OR REPLACE TRIGGER users_id_triger BEFORE
INSERT ON users FOR EACH ROW WHEN (new.id is null)--只有在id为空时，启动该触发器生成id号
begin
select users_id_sequence.nextval into: new.id from dual;
end;
--为表nfinal_note增加自增字段
--创建自增序列
CREATE SEQUENCE nfinal_note_id_sequence
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加，不循环
NOCACHE; -- 不建缓冲区
--创建插入触发器，更新id字段
CREATE OR REPLACE TRIGGER nfinal_note_id_triger BEFORE
INSERT ON nfinal_note FOR EACH ROW WHEN (new.id is null)--只有在id为空时，启动该触发器生成id号
begin
select nfinal_note_id_sequence.nextval into: new.id from dual;
end;
--为表fields增加自增字段
--创建自增序列
CREATE SEQUENCE fields_id_sequence
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加，不循环
NOCACHE; -- 不建缓冲区
--创建插入触发器，更新id字段
CREATE OR REPLACE TRIGGER fields_id_triger BEFORE
INSERT ON fields FOR EACH ROW WHEN (new.id is null)--只有在id为空时，启动该触发器生成id号
begin
select fields_id_sequence.nextval into: new.id from dual;
end;
